package com.crm.model.entity.contactManager;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class ContactExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public ContactExample() {
        oredCriteria = new ArrayList<>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andContactIdIsNull() {
            addCriterion("contact_id is null");
            return (Criteria) this;
        }

        public Criteria andContactIdIsNotNull() {
            addCriterion("contact_id is not null");
            return (Criteria) this;
        }

        public Criteria andContactIdEqualTo(String value) {
            addCriterion("contact_id =", value, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdNotEqualTo(String value) {
            addCriterion("contact_id <>", value, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdGreaterThan(String value) {
            addCriterion("contact_id >", value, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdGreaterThanOrEqualTo(String value) {
            addCriterion("contact_id >=", value, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdLessThan(String value) {
            addCriterion("contact_id <", value, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdLessThanOrEqualTo(String value) {
            addCriterion("contact_id <=", value, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdLike(String value) {
            addCriterion("contact_id like", value, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdNotLike(String value) {
            addCriterion("contact_id not like", value, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdIn(List<String> values) {
            addCriterion("contact_id in", values, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdNotIn(List<String> values) {
            addCriterion("contact_id not in", values, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdBetween(String value1, String value2) {
            addCriterion("contact_id between", value1, value2, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdNotBetween(String value1, String value2) {
            addCriterion("contact_id not between", value1, value2, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactNameIsNull() {
            addCriterion("contact_name is null");
            return (Criteria) this;
        }

        public Criteria andContactNameIsNotNull() {
            addCriterion("contact_name is not null");
            return (Criteria) this;
        }

        public Criteria andContactNameEqualTo(String value) {
            addCriterion("contact_name =", value, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameNotEqualTo(String value) {
            addCriterion("contact_name <>", value, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameGreaterThan(String value) {
            addCriterion("contact_name >", value, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameGreaterThanOrEqualTo(String value) {
            addCriterion("contact_name >=", value, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameLessThan(String value) {
            addCriterion("contact_name <", value, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameLessThanOrEqualTo(String value) {
            addCriterion("contact_name <=", value, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameLike(String value) {
            addCriterion("contact_name like", value, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameNotLike(String value) {
            addCriterion("contact_name not like", value, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameIn(List<String> values) {
            addCriterion("contact_name in", values, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameNotIn(List<String> values) {
            addCriterion("contact_name not in", values, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameBetween(String value1, String value2) {
            addCriterion("contact_name between", value1, value2, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameNotBetween(String value1, String value2) {
            addCriterion("contact_name not between", value1, value2, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactPositionIsNull() {
            addCriterion("contact_position is null");
            return (Criteria) this;
        }

        public Criteria andContactPositionIsNotNull() {
            addCriterion("contact_position is not null");
            return (Criteria) this;
        }

        public Criteria andContactPositionEqualTo(String value) {
            addCriterion("contact_position =", value, "contactPosition");
            return (Criteria) this;
        }

        public Criteria andContactPositionNotEqualTo(String value) {
            addCriterion("contact_position <>", value, "contactPosition");
            return (Criteria) this;
        }

        public Criteria andContactPositionGreaterThan(String value) {
            addCriterion("contact_position >", value, "contactPosition");
            return (Criteria) this;
        }

        public Criteria andContactPositionGreaterThanOrEqualTo(String value) {
            addCriterion("contact_position >=", value, "contactPosition");
            return (Criteria) this;
        }

        public Criteria andContactPositionLessThan(String value) {
            addCriterion("contact_position <", value, "contactPosition");
            return (Criteria) this;
        }

        public Criteria andContactPositionLessThanOrEqualTo(String value) {
            addCriterion("contact_position <=", value, "contactPosition");
            return (Criteria) this;
        }

        public Criteria andContactPositionLike(String value) {
            addCriterion("contact_position like", value, "contactPosition");
            return (Criteria) this;
        }

        public Criteria andContactPositionNotLike(String value) {
            addCriterion("contact_position not like", value, "contactPosition");
            return (Criteria) this;
        }

        public Criteria andContactPositionIn(List<String> values) {
            addCriterion("contact_position in", values, "contactPosition");
            return (Criteria) this;
        }

        public Criteria andContactPositionNotIn(List<String> values) {
            addCriterion("contact_position not in", values, "contactPosition");
            return (Criteria) this;
        }

        public Criteria andContactPositionBetween(String value1, String value2) {
            addCriterion("contact_position between", value1, value2, "contactPosition");
            return (Criteria) this;
        }

        public Criteria andContactPositionNotBetween(String value1, String value2) {
            addCriterion("contact_position not between", value1, value2, "contactPosition");
            return (Criteria) this;
        }

        public Criteria andContactInformationIsNull() {
            addCriterion("contact_information is null");
            return (Criteria) this;
        }

        public Criteria andContactInformationIsNotNull() {
            addCriterion("contact_information is not null");
            return (Criteria) this;
        }

        public Criteria andContactInformationEqualTo(String value) {
            addCriterion("contact_information =", value, "contactInformation");
            return (Criteria) this;
        }

        public Criteria andContactInformationNotEqualTo(String value) {
            addCriterion("contact_information <>", value, "contactInformation");
            return (Criteria) this;
        }

        public Criteria andContactInformationGreaterThan(String value) {
            addCriterion("contact_information >", value, "contactInformation");
            return (Criteria) this;
        }

        public Criteria andContactInformationGreaterThanOrEqualTo(String value) {
            addCriterion("contact_information >=", value, "contactInformation");
            return (Criteria) this;
        }

        public Criteria andContactInformationLessThan(String value) {
            addCriterion("contact_information <", value, "contactInformation");
            return (Criteria) this;
        }

        public Criteria andContactInformationLessThanOrEqualTo(String value) {
            addCriterion("contact_information <=", value, "contactInformation");
            return (Criteria) this;
        }

        public Criteria andContactInformationLike(String value) {
            addCriterion("contact_information like", value, "contactInformation");
            return (Criteria) this;
        }

        public Criteria andContactInformationNotLike(String value) {
            addCriterion("contact_information not like", value, "contactInformation");
            return (Criteria) this;
        }

        public Criteria andContactInformationIn(List<String> values) {
            addCriterion("contact_information in", values, "contactInformation");
            return (Criteria) this;
        }

        public Criteria andContactInformationNotIn(List<String> values) {
            addCriterion("contact_information not in", values, "contactInformation");
            return (Criteria) this;
        }

        public Criteria andContactInformationBetween(String value1, String value2) {
            addCriterion("contact_information between", value1, value2, "contactInformation");
            return (Criteria) this;
        }

        public Criteria andContactInformationNotBetween(String value1, String value2) {
            addCriterion("contact_information not between", value1, value2, "contactInformation");
            return (Criteria) this;
        }

        public Criteria andOnTheJobSituationIsNull() {
            addCriterion("on_the_job_situation is null");
            return (Criteria) this;
        }

        public Criteria andOnTheJobSituationIsNotNull() {
            addCriterion("on_the_job_situation is not null");
            return (Criteria) this;
        }

        public Criteria andOnTheJobSituationEqualTo(Integer value) {
            addCriterion("on_the_job_situation =", value, "onTheJobSituation");
            return (Criteria) this;
        }

        public Criteria andOnTheJobSituationNotEqualTo(Integer value) {
            addCriterion("on_the_job_situation <>", value, "onTheJobSituation");
            return (Criteria) this;
        }

        public Criteria andOnTheJobSituationGreaterThan(Integer value) {
            addCriterion("on_the_job_situation >", value, "onTheJobSituation");
            return (Criteria) this;
        }

        public Criteria andOnTheJobSituationGreaterThanOrEqualTo(Integer value) {
            addCriterion("on_the_job_situation >=", value, "onTheJobSituation");
            return (Criteria) this;
        }

        public Criteria andOnTheJobSituationLessThan(Integer value) {
            addCriterion("on_the_job_situation <", value, "onTheJobSituation");
            return (Criteria) this;
        }

        public Criteria andOnTheJobSituationLessThanOrEqualTo(Integer value) {
            addCriterion("on_the_job_situation <=", value, "onTheJobSituation");
            return (Criteria) this;
        }

        public Criteria andOnTheJobSituationIn(List<Integer> values) {
            addCriterion("on_the_job_situation in", values, "onTheJobSituation");
            return (Criteria) this;
        }

        public Criteria andOnTheJobSituationNotIn(List<Integer> values) {
            addCriterion("on_the_job_situation not in", values, "onTheJobSituation");
            return (Criteria) this;
        }

        public Criteria andOnTheJobSituationBetween(Integer value1, Integer value2) {
            addCriterion("on_the_job_situation between", value1, value2, "onTheJobSituation");
            return (Criteria) this;
        }

        public Criteria andOnTheJobSituationNotBetween(Integer value1, Integer value2) {
            addCriterion("on_the_job_situation not between", value1, value2, "onTheJobSituation");
            return (Criteria) this;
        }

        public Criteria andProvinceIdIsNull() {
            addCriterion("province_id is null");
            return (Criteria) this;
        }

        public Criteria andProvinceIdIsNotNull() {
            addCriterion("province_id is not null");
            return (Criteria) this;
        }

        public Criteria andProvinceIdEqualTo(String value) {
            addCriterion("province_id =", value, "provinceId");
            return (Criteria) this;
        }

        public Criteria andProvinceIdNotEqualTo(String value) {
            addCriterion("province_id <>", value, "provinceId");
            return (Criteria) this;
        }

        public Criteria andProvinceIdGreaterThan(String value) {
            addCriterion("province_id >", value, "provinceId");
            return (Criteria) this;
        }

        public Criteria andProvinceIdGreaterThanOrEqualTo(String value) {
            addCriterion("province_id >=", value, "provinceId");
            return (Criteria) this;
        }

        public Criteria andProvinceIdLessThan(String value) {
            addCriterion("province_id <", value, "provinceId");
            return (Criteria) this;
        }

        public Criteria andProvinceIdLessThanOrEqualTo(String value) {
            addCriterion("province_id <=", value, "provinceId");
            return (Criteria) this;
        }

        public Criteria andProvinceIdLike(String value) {
            addCriterion("province_id like", value, "provinceId");
            return (Criteria) this;
        }

        public Criteria andProvinceIdNotLike(String value) {
            addCriterion("province_id not like", value, "provinceId");
            return (Criteria) this;
        }

        public Criteria andProvinceIdIn(List<String> values) {
            addCriterion("province_id in", values, "provinceId");
            return (Criteria) this;
        }

        public Criteria andProvinceIdNotIn(List<String> values) {
            addCriterion("province_id not in", values, "provinceId");
            return (Criteria) this;
        }

        public Criteria andProvinceIdBetween(String value1, String value2) {
            addCriterion("province_id between", value1, value2, "provinceId");
            return (Criteria) this;
        }

        public Criteria andProvinceIdNotBetween(String value1, String value2) {
            addCriterion("province_id not between", value1, value2, "provinceId");
            return (Criteria) this;
        }

        public Criteria andProvinceNameIsNull() {
            addCriterion("province_name is null");
            return (Criteria) this;
        }

        public Criteria andProvinceNameIsNotNull() {
            addCriterion("province_name is not null");
            return (Criteria) this;
        }

        public Criteria andProvinceNameEqualTo(String value) {
            addCriterion("province_name =", value, "provinceName");
            return (Criteria) this;
        }

        public Criteria andProvinceNameNotEqualTo(String value) {
            addCriterion("province_name <>", value, "provinceName");
            return (Criteria) this;
        }

        public Criteria andProvinceNameGreaterThan(String value) {
            addCriterion("province_name >", value, "provinceName");
            return (Criteria) this;
        }

        public Criteria andProvinceNameGreaterThanOrEqualTo(String value) {
            addCriterion("province_name >=", value, "provinceName");
            return (Criteria) this;
        }

        public Criteria andProvinceNameLessThan(String value) {
            addCriterion("province_name <", value, "provinceName");
            return (Criteria) this;
        }

        public Criteria andProvinceNameLessThanOrEqualTo(String value) {
            addCriterion("province_name <=", value, "provinceName");
            return (Criteria) this;
        }

        public Criteria andProvinceNameLike(String value) {
            addCriterion("province_name like", value, "provinceName");
            return (Criteria) this;
        }

        public Criteria andProvinceNameNotLike(String value) {
            addCriterion("province_name not like", value, "provinceName");
            return (Criteria) this;
        }

        public Criteria andProvinceNameIn(List<String> values) {
            addCriterion("province_name in", values, "provinceName");
            return (Criteria) this;
        }

        public Criteria andProvinceNameNotIn(List<String> values) {
            addCriterion("province_name not in", values, "provinceName");
            return (Criteria) this;
        }

        public Criteria andProvinceNameBetween(String value1, String value2) {
            addCriterion("province_name between", value1, value2, "provinceName");
            return (Criteria) this;
        }

        public Criteria andProvinceNameNotBetween(String value1, String value2) {
            addCriterion("province_name not between", value1, value2, "provinceName");
            return (Criteria) this;
        }

        public Criteria andCityIdIsNull() {
            addCriterion("city_id is null");
            return (Criteria) this;
        }

        public Criteria andCityIdIsNotNull() {
            addCriterion("city_id is not null");
            return (Criteria) this;
        }

        public Criteria andCityIdEqualTo(String value) {
            addCriterion("city_id =", value, "cityId");
            return (Criteria) this;
        }

        public Criteria andCityIdNotEqualTo(String value) {
            addCriterion("city_id <>", value, "cityId");
            return (Criteria) this;
        }

        public Criteria andCityIdGreaterThan(String value) {
            addCriterion("city_id >", value, "cityId");
            return (Criteria) this;
        }

        public Criteria andCityIdGreaterThanOrEqualTo(String value) {
            addCriterion("city_id >=", value, "cityId");
            return (Criteria) this;
        }

        public Criteria andCityIdLessThan(String value) {
            addCriterion("city_id <", value, "cityId");
            return (Criteria) this;
        }

        public Criteria andCityIdLessThanOrEqualTo(String value) {
            addCriterion("city_id <=", value, "cityId");
            return (Criteria) this;
        }

        public Criteria andCityIdLike(String value) {
            addCriterion("city_id like", value, "cityId");
            return (Criteria) this;
        }

        public Criteria andCityIdNotLike(String value) {
            addCriterion("city_id not like", value, "cityId");
            return (Criteria) this;
        }

        public Criteria andCityIdIn(List<String> values) {
            addCriterion("city_id in", values, "cityId");
            return (Criteria) this;
        }

        public Criteria andCityIdNotIn(List<String> values) {
            addCriterion("city_id not in", values, "cityId");
            return (Criteria) this;
        }

        public Criteria andCityIdBetween(String value1, String value2) {
            addCriterion("city_id between", value1, value2, "cityId");
            return (Criteria) this;
        }

        public Criteria andCityIdNotBetween(String value1, String value2) {
            addCriterion("city_id not between", value1, value2, "cityId");
            return (Criteria) this;
        }

        public Criteria andCityNameIsNull() {
            addCriterion("city_name is null");
            return (Criteria) this;
        }

        public Criteria andCityNameIsNotNull() {
            addCriterion("city_name is not null");
            return (Criteria) this;
        }

        public Criteria andCityNameEqualTo(String value) {
            addCriterion("city_name =", value, "cityName");
            return (Criteria) this;
        }

        public Criteria andCityNameNotEqualTo(String value) {
            addCriterion("city_name <>", value, "cityName");
            return (Criteria) this;
        }

        public Criteria andCityNameGreaterThan(String value) {
            addCriterion("city_name >", value, "cityName");
            return (Criteria) this;
        }

        public Criteria andCityNameGreaterThanOrEqualTo(String value) {
            addCriterion("city_name >=", value, "cityName");
            return (Criteria) this;
        }

        public Criteria andCityNameLessThan(String value) {
            addCriterion("city_name <", value, "cityName");
            return (Criteria) this;
        }

        public Criteria andCityNameLessThanOrEqualTo(String value) {
            addCriterion("city_name <=", value, "cityName");
            return (Criteria) this;
        }

        public Criteria andCityNameLike(String value) {
            addCriterion("city_name like", value, "cityName");
            return (Criteria) this;
        }

        public Criteria andCityNameNotLike(String value) {
            addCriterion("city_name not like", value, "cityName");
            return (Criteria) this;
        }

        public Criteria andCityNameIn(List<String> values) {
            addCriterion("city_name in", values, "cityName");
            return (Criteria) this;
        }

        public Criteria andCityNameNotIn(List<String> values) {
            addCriterion("city_name not in", values, "cityName");
            return (Criteria) this;
        }

        public Criteria andCityNameBetween(String value1, String value2) {
            addCriterion("city_name between", value1, value2, "cityName");
            return (Criteria) this;
        }

        public Criteria andCityNameNotBetween(String value1, String value2) {
            addCriterion("city_name not between", value1, value2, "cityName");
            return (Criteria) this;
        }

        public Criteria andIndustryIsNull() {
            addCriterion("industry is null");
            return (Criteria) this;
        }

        public Criteria andIndustryIsNotNull() {
            addCriterion("industry is not null");
            return (Criteria) this;
        }

        public Criteria andIndustryEqualTo(String value) {
            addCriterion("industry =", value, "industry");
            return (Criteria) this;
        }

        public Criteria andIndustryNotEqualTo(String value) {
            addCriterion("industry <>", value, "industry");
            return (Criteria) this;
        }

        public Criteria andIndustryGreaterThan(String value) {
            addCriterion("industry >", value, "industry");
            return (Criteria) this;
        }

        public Criteria andIndustryGreaterThanOrEqualTo(String value) {
            addCriterion("industry >=", value, "industry");
            return (Criteria) this;
        }

        public Criteria andIndustryLessThan(String value) {
            addCriterion("industry <", value, "industry");
            return (Criteria) this;
        }

        public Criteria andIndustryLessThanOrEqualTo(String value) {
            addCriterion("industry <=", value, "industry");
            return (Criteria) this;
        }

        public Criteria andIndustryLike(String value) {
            addCriterion("industry like", value, "industry");
            return (Criteria) this;
        }

        public Criteria andIndustryNotLike(String value) {
            addCriterion("industry not like", value, "industry");
            return (Criteria) this;
        }

        public Criteria andIndustryIn(List<String> values) {
            addCriterion("industry in", values, "industry");
            return (Criteria) this;
        }

        public Criteria andIndustryNotIn(List<String> values) {
            addCriterion("industry not in", values, "industry");
            return (Criteria) this;
        }

        public Criteria andIndustryBetween(String value1, String value2) {
            addCriterion("industry between", value1, value2, "industry");
            return (Criteria) this;
        }

        public Criteria andIndustryNotBetween(String value1, String value2) {
            addCriterion("industry not between", value1, value2, "industry");
            return (Criteria) this;
        }

        public Criteria andCompanyAddressIsNull() {
            addCriterion("company_address is null");
            return (Criteria) this;
        }

        public Criteria andCompanyAddressIsNotNull() {
            addCriterion("company_address is not null");
            return (Criteria) this;
        }

        public Criteria andCompanyAddressEqualTo(String value) {
            addCriterion("company_address =", value, "companyAddress");
            return (Criteria) this;
        }

        public Criteria andCompanyAddressNotEqualTo(String value) {
            addCriterion("company_address <>", value, "companyAddress");
            return (Criteria) this;
        }

        public Criteria andCompanyAddressGreaterThan(String value) {
            addCriterion("company_address >", value, "companyAddress");
            return (Criteria) this;
        }

        public Criteria andCompanyAddressGreaterThanOrEqualTo(String value) {
            addCriterion("company_address >=", value, "companyAddress");
            return (Criteria) this;
        }

        public Criteria andCompanyAddressLessThan(String value) {
            addCriterion("company_address <", value, "companyAddress");
            return (Criteria) this;
        }

        public Criteria andCompanyAddressLessThanOrEqualTo(String value) {
            addCriterion("company_address <=", value, "companyAddress");
            return (Criteria) this;
        }

        public Criteria andCompanyAddressLike(String value) {
            addCriterion("company_address like", value, "companyAddress");
            return (Criteria) this;
        }

        public Criteria andCompanyAddressNotLike(String value) {
            addCriterion("company_address not like", value, "companyAddress");
            return (Criteria) this;
        }

        public Criteria andCompanyAddressIn(List<String> values) {
            addCriterion("company_address in", values, "companyAddress");
            return (Criteria) this;
        }

        public Criteria andCompanyAddressNotIn(List<String> values) {
            addCriterion("company_address not in", values, "companyAddress");
            return (Criteria) this;
        }

        public Criteria andCompanyAddressBetween(String value1, String value2) {
            addCriterion("company_address between", value1, value2, "companyAddress");
            return (Criteria) this;
        }

        public Criteria andCompanyAddressNotBetween(String value1, String value2) {
            addCriterion("company_address not between", value1, value2, "companyAddress");
            return (Criteria) this;
        }

        public Criteria andWxIsNull() {
            addCriterion("wx is null");
            return (Criteria) this;
        }

        public Criteria andWxIsNotNull() {
            addCriterion("wx is not null");
            return (Criteria) this;
        }

        public Criteria andWxEqualTo(String value) {
            addCriterion("wx =", value, "wx");
            return (Criteria) this;
        }

        public Criteria andWxNotEqualTo(String value) {
            addCriterion("wx <>", value, "wx");
            return (Criteria) this;
        }

        public Criteria andWxGreaterThan(String value) {
            addCriterion("wx >", value, "wx");
            return (Criteria) this;
        }

        public Criteria andWxGreaterThanOrEqualTo(String value) {
            addCriterion("wx >=", value, "wx");
            return (Criteria) this;
        }

        public Criteria andWxLessThan(String value) {
            addCriterion("wx <", value, "wx");
            return (Criteria) this;
        }

        public Criteria andWxLessThanOrEqualTo(String value) {
            addCriterion("wx <=", value, "wx");
            return (Criteria) this;
        }

        public Criteria andWxLike(String value) {
            addCriterion("wx like", value, "wx");
            return (Criteria) this;
        }

        public Criteria andWxNotLike(String value) {
            addCriterion("wx not like", value, "wx");
            return (Criteria) this;
        }

        public Criteria andWxIn(List<String> values) {
            addCriterion("wx in", values, "wx");
            return (Criteria) this;
        }

        public Criteria andWxNotIn(List<String> values) {
            addCriterion("wx not in", values, "wx");
            return (Criteria) this;
        }

        public Criteria andWxBetween(String value1, String value2) {
            addCriterion("wx between", value1, value2, "wx");
            return (Criteria) this;
        }

        public Criteria andWxNotBetween(String value1, String value2) {
            addCriterion("wx not between", value1, value2, "wx");
            return (Criteria) this;
        }

        public Criteria andMailBoxIsNull() {
            addCriterion("mail_box is null");
            return (Criteria) this;
        }

        public Criteria andMailBoxIsNotNull() {
            addCriterion("mail_box is not null");
            return (Criteria) this;
        }

        public Criteria andMailBoxEqualTo(String value) {
            addCriterion("mail_box =", value, "mailBox");
            return (Criteria) this;
        }

        public Criteria andMailBoxNotEqualTo(String value) {
            addCriterion("mail_box <>", value, "mailBox");
            return (Criteria) this;
        }

        public Criteria andMailBoxGreaterThan(String value) {
            addCriterion("mail_box >", value, "mailBox");
            return (Criteria) this;
        }

        public Criteria andMailBoxGreaterThanOrEqualTo(String value) {
            addCriterion("mail_box >=", value, "mailBox");
            return (Criteria) this;
        }

        public Criteria andMailBoxLessThan(String value) {
            addCriterion("mail_box <", value, "mailBox");
            return (Criteria) this;
        }

        public Criteria andMailBoxLessThanOrEqualTo(String value) {
            addCriterion("mail_box <=", value, "mailBox");
            return (Criteria) this;
        }

        public Criteria andMailBoxLike(String value) {
            addCriterion("mail_box like", value, "mailBox");
            return (Criteria) this;
        }

        public Criteria andMailBoxNotLike(String value) {
            addCriterion("mail_box not like", value, "mailBox");
            return (Criteria) this;
        }

        public Criteria andMailBoxIn(List<String> values) {
            addCriterion("mail_box in", values, "mailBox");
            return (Criteria) this;
        }

        public Criteria andMailBoxNotIn(List<String> values) {
            addCriterion("mail_box not in", values, "mailBox");
            return (Criteria) this;
        }

        public Criteria andMailBoxBetween(String value1, String value2) {
            addCriterion("mail_box between", value1, value2, "mailBox");
            return (Criteria) this;
        }

        public Criteria andMailBoxNotBetween(String value1, String value2) {
            addCriterion("mail_box not between", value1, value2, "mailBox");
            return (Criteria) this;
        }

        public Criteria andCurrentIntentionIsNull() {
            addCriterion("current_intention is null");
            return (Criteria) this;
        }

        public Criteria andCurrentIntentionIsNotNull() {
            addCriterion("current_intention is not null");
            return (Criteria) this;
        }

        public Criteria andCurrentIntentionEqualTo(String value) {
            addCriterion("current_intention =", value, "currentIntention");
            return (Criteria) this;
        }

        public Criteria andCurrentIntentionNotEqualTo(String value) {
            addCriterion("current_intention <>", value, "currentIntention");
            return (Criteria) this;
        }

        public Criteria andCurrentIntentionGreaterThan(String value) {
            addCriterion("current_intention >", value, "currentIntention");
            return (Criteria) this;
        }

        public Criteria andCurrentIntentionGreaterThanOrEqualTo(String value) {
            addCriterion("current_intention >=", value, "currentIntention");
            return (Criteria) this;
        }

        public Criteria andCurrentIntentionLessThan(String value) {
            addCriterion("current_intention <", value, "currentIntention");
            return (Criteria) this;
        }

        public Criteria andCurrentIntentionLessThanOrEqualTo(String value) {
            addCriterion("current_intention <=", value, "currentIntention");
            return (Criteria) this;
        }

        public Criteria andCurrentIntentionLike(String value) {
            addCriterion("current_intention like", value, "currentIntention");
            return (Criteria) this;
        }

        public Criteria andCurrentIntentionNotLike(String value) {
            addCriterion("current_intention not like", value, "currentIntention");
            return (Criteria) this;
        }

        public Criteria andCurrentIntentionIn(List<String> values) {
            addCriterion("current_intention in", values, "currentIntention");
            return (Criteria) this;
        }

        public Criteria andCurrentIntentionNotIn(List<String> values) {
            addCriterion("current_intention not in", values, "currentIntention");
            return (Criteria) this;
        }

        public Criteria andCurrentIntentionBetween(String value1, String value2) {
            addCriterion("current_intention between", value1, value2, "currentIntention");
            return (Criteria) this;
        }

        public Criteria andCurrentIntentionNotBetween(String value1, String value2) {
            addCriterion("current_intention not between", value1, value2, "currentIntention");
            return (Criteria) this;
        }

        public Criteria andFollowUpTimesIsNull() {
            addCriterion("follow_up_times is null");
            return (Criteria) this;
        }

        public Criteria andFollowUpTimesIsNotNull() {
            addCriterion("follow_up_times is not null");
            return (Criteria) this;
        }

        public Criteria andFollowUpTimesEqualTo(Integer value) {
            addCriterion("follow_up_times =", value, "followUpTimes");
            return (Criteria) this;
        }

        public Criteria andFollowUpTimesNotEqualTo(Integer value) {
            addCriterion("follow_up_times <>", value, "followUpTimes");
            return (Criteria) this;
        }

        public Criteria andFollowUpTimesGreaterThan(Integer value) {
            addCriterion("follow_up_times >", value, "followUpTimes");
            return (Criteria) this;
        }

        public Criteria andFollowUpTimesGreaterThanOrEqualTo(Integer value) {
            addCriterion("follow_up_times >=", value, "followUpTimes");
            return (Criteria) this;
        }

        public Criteria andFollowUpTimesLessThan(Integer value) {
            addCriterion("follow_up_times <", value, "followUpTimes");
            return (Criteria) this;
        }

        public Criteria andFollowUpTimesLessThanOrEqualTo(Integer value) {
            addCriterion("follow_up_times <=", value, "followUpTimes");
            return (Criteria) this;
        }

        public Criteria andFollowUpTimesIn(List<Integer> values) {
            addCriterion("follow_up_times in", values, "followUpTimes");
            return (Criteria) this;
        }

        public Criteria andFollowUpTimesNotIn(List<Integer> values) {
            addCriterion("follow_up_times not in", values, "followUpTimes");
            return (Criteria) this;
        }

        public Criteria andFollowUpTimesBetween(Integer value1, Integer value2) {
            addCriterion("follow_up_times between", value1, value2, "followUpTimes");
            return (Criteria) this;
        }

        public Criteria andFollowUpTimesNotBetween(Integer value1, Integer value2) {
            addCriterion("follow_up_times not between", value1, value2, "followUpTimes");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdIsNull() {
            addCriterion("create_people_id is null");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdIsNotNull() {
            addCriterion("create_people_id is not null");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdEqualTo(String value) {
            addCriterion("create_people_id =", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdNotEqualTo(String value) {
            addCriterion("create_people_id <>", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdGreaterThan(String value) {
            addCriterion("create_people_id >", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdGreaterThanOrEqualTo(String value) {
            addCriterion("create_people_id >=", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdLessThan(String value) {
            addCriterion("create_people_id <", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdLessThanOrEqualTo(String value) {
            addCriterion("create_people_id <=", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdLike(String value) {
            addCriterion("create_people_id like", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdNotLike(String value) {
            addCriterion("create_people_id not like", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdIn(List<String> values) {
            addCriterion("create_people_id in", values, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdNotIn(List<String> values) {
            addCriterion("create_people_id not in", values, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdBetween(String value1, String value2) {
            addCriterion("create_people_id between", value1, value2, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdNotBetween(String value1, String value2) {
            addCriterion("create_people_id not between", value1, value2, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreateTmIsNull() {
            addCriterion("create_tm is null");
            return (Criteria) this;
        }

        public Criteria andCreateTmIsNotNull() {
            addCriterion("create_tm is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTmEqualTo(Date value) {
            addCriterion("create_tm =", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmNotEqualTo(Date value) {
            addCriterion("create_tm <>", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmGreaterThan(Date value) {
            addCriterion("create_tm >", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmGreaterThanOrEqualTo(Date value) {
            addCriterion("create_tm >=", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmLessThan(Date value) {
            addCriterion("create_tm <", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmLessThanOrEqualTo(Date value) {
            addCriterion("create_tm <=", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmIn(List<Date> values) {
            addCriterion("create_tm in", values, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmNotIn(List<Date> values) {
            addCriterion("create_tm not in", values, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmBetween(Date value1, Date value2) {
            addCriterion("create_tm between", value1, value2, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmNotBetween(Date value1, Date value2) {
            addCriterion("create_tm not between", value1, value2, "createTm");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdIsNull() {
            addCriterion("update_people_id is null");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdIsNotNull() {
            addCriterion("update_people_id is not null");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdEqualTo(String value) {
            addCriterion("update_people_id =", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdNotEqualTo(String value) {
            addCriterion("update_people_id <>", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdGreaterThan(String value) {
            addCriterion("update_people_id >", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdGreaterThanOrEqualTo(String value) {
            addCriterion("update_people_id >=", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdLessThan(String value) {
            addCriterion("update_people_id <", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdLessThanOrEqualTo(String value) {
            addCriterion("update_people_id <=", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdLike(String value) {
            addCriterion("update_people_id like", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdNotLike(String value) {
            addCriterion("update_people_id not like", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdIn(List<String> values) {
            addCriterion("update_people_id in", values, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdNotIn(List<String> values) {
            addCriterion("update_people_id not in", values, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdBetween(String value1, String value2) {
            addCriterion("update_people_id between", value1, value2, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdNotBetween(String value1, String value2) {
            addCriterion("update_people_id not between", value1, value2, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdateTmIsNull() {
            addCriterion("update_tm is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTmIsNotNull() {
            addCriterion("update_tm is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTmEqualTo(Date value) {
            addCriterion("update_tm =", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmNotEqualTo(Date value) {
            addCriterion("update_tm <>", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmGreaterThan(Date value) {
            addCriterion("update_tm >", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmGreaterThanOrEqualTo(Date value) {
            addCriterion("update_tm >=", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmLessThan(Date value) {
            addCriterion("update_tm <", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmLessThanOrEqualTo(Date value) {
            addCriterion("update_tm <=", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmIn(List<Date> values) {
            addCriterion("update_tm in", values, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmNotIn(List<Date> values) {
            addCriterion("update_tm not in", values, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmBetween(Date value1, Date value2) {
            addCriterion("update_tm between", value1, value2, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmNotBetween(Date value1, Date value2) {
            addCriterion("update_tm not between", value1, value2, "updateTm");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusIsNull() {
            addCriterion("delete_status is null");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusIsNotNull() {
            addCriterion("delete_status is not null");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusEqualTo(Short value) {
            addCriterion("delete_status =", value, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusNotEqualTo(Short value) {
            addCriterion("delete_status <>", value, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusGreaterThan(Short value) {
            addCriterion("delete_status >", value, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusGreaterThanOrEqualTo(Short value) {
            addCriterion("delete_status >=", value, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusLessThan(Short value) {
            addCriterion("delete_status <", value, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusLessThanOrEqualTo(Short value) {
            addCriterion("delete_status <=", value, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusIn(List<Short> values) {
            addCriterion("delete_status in", values, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusNotIn(List<Short> values) {
            addCriterion("delete_status not in", values, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusBetween(Short value1, Short value2) {
            addCriterion("delete_status between", value1, value2, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusNotBetween(Short value1, Short value2) {
            addCriterion("delete_status not between", value1, value2, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andContactStateIsNull() {
            addCriterion("contact_state is null");
            return (Criteria) this;
        }

        public Criteria andContactStateIsNotNull() {
            addCriterion("contact_state is not null");
            return (Criteria) this;
        }

        public Criteria andContactStateEqualTo(Integer value) {
            addCriterion("contact_state =", value, "contactState");
            return (Criteria) this;
        }

        public Criteria andContactStateNotEqualTo(Integer value) {
            addCriterion("contact_state <>", value, "contactState");
            return (Criteria) this;
        }

        public Criteria andContactStateGreaterThan(Integer value) {
            addCriterion("contact_state >", value, "contactState");
            return (Criteria) this;
        }

        public Criteria andContactStateGreaterThanOrEqualTo(Integer value) {
            addCriterion("contact_state >=", value, "contactState");
            return (Criteria) this;
        }

        public Criteria andContactStateLessThan(Integer value) {
            addCriterion("contact_state <", value, "contactState");
            return (Criteria) this;
        }

        public Criteria andContactStateLessThanOrEqualTo(Integer value) {
            addCriterion("contact_state <=", value, "contactState");
            return (Criteria) this;
        }

        public Criteria andContactStateIn(List<Integer> values) {
            addCriterion("contact_state in", values, "contactState");
            return (Criteria) this;
        }

        public Criteria andContactStateNotIn(List<Integer> values) {
            addCriterion("contact_state not in", values, "contactState");
            return (Criteria) this;
        }

        public Criteria andContactStateBetween(Integer value1, Integer value2) {
            addCriterion("contact_state between", value1, value2, "contactState");
            return (Criteria) this;
        }

        public Criteria andContactStateNotBetween(Integer value1, Integer value2) {
            addCriterion("contact_state not between", value1, value2, "contactState");
            return (Criteria) this;
        }

        public Criteria andMemberGradeIsNull() {
            addCriterion("member_grade is null");
            return (Criteria) this;
        }

        public Criteria andMemberGradeIsNotNull() {
            addCriterion("member_grade is not null");
            return (Criteria) this;
        }

        public Criteria andMemberGradeEqualTo(Integer value) {
            addCriterion("member_grade =", value, "memberGrade");
            return (Criteria) this;
        }

        public Criteria andMemberGradeNotEqualTo(Integer value) {
            addCriterion("member_grade <>", value, "memberGrade");
            return (Criteria) this;
        }

        public Criteria andMemberGradeGreaterThan(Integer value) {
            addCriterion("member_grade >", value, "memberGrade");
            return (Criteria) this;
        }

        public Criteria andMemberGradeGreaterThanOrEqualTo(Integer value) {
            addCriterion("member_grade >=", value, "memberGrade");
            return (Criteria) this;
        }

        public Criteria andMemberGradeLessThan(Integer value) {
            addCriterion("member_grade <", value, "memberGrade");
            return (Criteria) this;
        }

        public Criteria andMemberGradeLessThanOrEqualTo(Integer value) {
            addCriterion("member_grade <=", value, "memberGrade");
            return (Criteria) this;
        }

        public Criteria andMemberGradeIn(List<Integer> values) {
            addCriterion("member_grade in", values, "memberGrade");
            return (Criteria) this;
        }

        public Criteria andMemberGradeNotIn(List<Integer> values) {
            addCriterion("member_grade not in", values, "memberGrade");
            return (Criteria) this;
        }

        public Criteria andMemberGradeBetween(Integer value1, Integer value2) {
            addCriterion("member_grade between", value1, value2, "memberGrade");
            return (Criteria) this;
        }

        public Criteria andMemberGradeNotBetween(Integer value1, Integer value2) {
            addCriterion("member_grade not between", value1, value2, "memberGrade");
            return (Criteria) this;
        }

        public Criteria andContactNatureIsNull() {
            addCriterion("contact_nature is null");
            return (Criteria) this;
        }

        public Criteria andContactNatureIsNotNull() {
            addCriterion("contact_nature is not null");
            return (Criteria) this;
        }

        public Criteria andContactNatureEqualTo(Integer value) {
            addCriterion("contact_nature =", value, "contactNature");
            return (Criteria) this;
        }

        public Criteria andContactNatureNotEqualTo(Integer value) {
            addCriterion("contact_nature <>", value, "contactNature");
            return (Criteria) this;
        }

        public Criteria andContactNatureGreaterThan(Integer value) {
            addCriterion("contact_nature >", value, "contactNature");
            return (Criteria) this;
        }

        public Criteria andContactNatureGreaterThanOrEqualTo(Integer value) {
            addCriterion("contact_nature >=", value, "contactNature");
            return (Criteria) this;
        }

        public Criteria andContactNatureLessThan(Integer value) {
            addCriterion("contact_nature <", value, "contactNature");
            return (Criteria) this;
        }

        public Criteria andContactNatureLessThanOrEqualTo(Integer value) {
            addCriterion("contact_nature <=", value, "contactNature");
            return (Criteria) this;
        }

        public Criteria andContactNatureIn(List<Integer> values) {
            addCriterion("contact_nature in", values, "contactNature");
            return (Criteria) this;
        }

        public Criteria andContactNatureNotIn(List<Integer> values) {
            addCriterion("contact_nature not in", values, "contactNature");
            return (Criteria) this;
        }

        public Criteria andContactNatureBetween(Integer value1, Integer value2) {
            addCriterion("contact_nature between", value1, value2, "contactNature");
            return (Criteria) this;
        }

        public Criteria andContactNatureNotBetween(Integer value1, Integer value2) {
            addCriterion("contact_nature not between", value1, value2, "contactNature");
            return (Criteria) this;
        }

        public Criteria andAbolishStateIsNull() {
            addCriterion("abolish_state is null");
            return (Criteria) this;
        }

        public Criteria andAbolishStateIsNotNull() {
            addCriterion("abolish_state is not null");
            return (Criteria) this;
        }

        public Criteria andAbolishStateEqualTo(Integer value) {
            addCriterion("abolish_state =", value, "abolishState");
            return (Criteria) this;
        }

        public Criteria andAbolishStateNotEqualTo(Integer value) {
            addCriterion("abolish_state <>", value, "abolishState");
            return (Criteria) this;
        }

        public Criteria andAbolishStateGreaterThan(Integer value) {
            addCriterion("abolish_state >", value, "abolishState");
            return (Criteria) this;
        }

        public Criteria andAbolishStateGreaterThanOrEqualTo(Integer value) {
            addCriterion("abolish_state >=", value, "abolishState");
            return (Criteria) this;
        }

        public Criteria andAbolishStateLessThan(Integer value) {
            addCriterion("abolish_state <", value, "abolishState");
            return (Criteria) this;
        }

        public Criteria andAbolishStateLessThanOrEqualTo(Integer value) {
            addCriterion("abolish_state <=", value, "abolishState");
            return (Criteria) this;
        }

        public Criteria andAbolishStateIn(List<Integer> values) {
            addCriterion("abolish_state in", values, "abolishState");
            return (Criteria) this;
        }

        public Criteria andAbolishStateNotIn(List<Integer> values) {
            addCriterion("abolish_state not in", values, "abolishState");
            return (Criteria) this;
        }

        public Criteria andAbolishStateBetween(Integer value1, Integer value2) {
            addCriterion("abolish_state between", value1, value2, "abolishState");
            return (Criteria) this;
        }

        public Criteria andAbolishStateNotBetween(Integer value1, Integer value2) {
            addCriterion("abolish_state not between", value1, value2, "abolishState");
            return (Criteria) this;
        }

        public Criteria andHomeAddressIsNull() {
            addCriterion("home_address is null");
            return (Criteria) this;
        }

        public Criteria andHomeAddressIsNotNull() {
            addCriterion("home_address is not null");
            return (Criteria) this;
        }

        public Criteria andHomeAddressEqualTo(String value) {
            addCriterion("home_address =", value, "homeAddress");
            return (Criteria) this;
        }

        public Criteria andHomeAddressNotEqualTo(String value) {
            addCriterion("home_address <>", value, "homeAddress");
            return (Criteria) this;
        }

        public Criteria andHomeAddressGreaterThan(String value) {
            addCriterion("home_address >", value, "homeAddress");
            return (Criteria) this;
        }

        public Criteria andHomeAddressGreaterThanOrEqualTo(String value) {
            addCriterion("home_address >=", value, "homeAddress");
            return (Criteria) this;
        }

        public Criteria andHomeAddressLessThan(String value) {
            addCriterion("home_address <", value, "homeAddress");
            return (Criteria) this;
        }

        public Criteria andHomeAddressLessThanOrEqualTo(String value) {
            addCriterion("home_address <=", value, "homeAddress");
            return (Criteria) this;
        }

        public Criteria andHomeAddressLike(String value) {
            addCriterion("home_address like", value, "homeAddress");
            return (Criteria) this;
        }

        public Criteria andHomeAddressNotLike(String value) {
            addCriterion("home_address not like", value, "homeAddress");
            return (Criteria) this;
        }

        public Criteria andHomeAddressIn(List<String> values) {
            addCriterion("home_address in", values, "homeAddress");
            return (Criteria) this;
        }

        public Criteria andHomeAddressNotIn(List<String> values) {
            addCriterion("home_address not in", values, "homeAddress");
            return (Criteria) this;
        }

        public Criteria andHomeAddressBetween(String value1, String value2) {
            addCriterion("home_address between", value1, value2, "homeAddress");
            return (Criteria) this;
        }

        public Criteria andHomeAddressNotBetween(String value1, String value2) {
            addCriterion("home_address not between", value1, value2, "homeAddress");
            return (Criteria) this;
        }

        public Criteria andContactRatingIsNull() {
            addCriterion("contact_rating is null");
            return (Criteria) this;
        }

        public Criteria andContactRatingIsNotNull() {
            addCriterion("contact_rating is not null");
            return (Criteria) this;
        }

        public Criteria andContactRatingEqualTo(String value) {
            addCriterion("contact_rating =", value, "contactRating");
            return (Criteria) this;
        }

        public Criteria andContactRatingNotEqualTo(String value) {
            addCriterion("contact_rating <>", value, "contactRating");
            return (Criteria) this;
        }

        public Criteria andContactRatingGreaterThan(String value) {
            addCriterion("contact_rating >", value, "contactRating");
            return (Criteria) this;
        }

        public Criteria andContactRatingGreaterThanOrEqualTo(String value) {
            addCriterion("contact_rating >=", value, "contactRating");
            return (Criteria) this;
        }

        public Criteria andContactRatingLessThan(String value) {
            addCriterion("contact_rating <", value, "contactRating");
            return (Criteria) this;
        }

        public Criteria andContactRatingLessThanOrEqualTo(String value) {
            addCriterion("contact_rating <=", value, "contactRating");
            return (Criteria) this;
        }

        public Criteria andContactRatingLike(String value) {
            addCriterion("contact_rating like", value, "contactRating");
            return (Criteria) this;
        }

        public Criteria andContactRatingNotLike(String value) {
            addCriterion("contact_rating not like", value, "contactRating");
            return (Criteria) this;
        }

        public Criteria andContactRatingIn(List<String> values) {
            addCriterion("contact_rating in", values, "contactRating");
            return (Criteria) this;
        }

        public Criteria andContactRatingNotIn(List<String> values) {
            addCriterion("contact_rating not in", values, "contactRating");
            return (Criteria) this;
        }

        public Criteria andContactRatingBetween(String value1, String value2) {
            addCriterion("contact_rating between", value1, value2, "contactRating");
            return (Criteria) this;
        }

        public Criteria andContactRatingNotBetween(String value1, String value2) {
            addCriterion("contact_rating not between", value1, value2, "contactRating");
            return (Criteria) this;
        }

        public Criteria andTopContactIsNull() {
            addCriterion("top_contact is null");
            return (Criteria) this;
        }

        public Criteria andTopContactIsNotNull() {
            addCriterion("top_contact is not null");
            return (Criteria) this;
        }

        public Criteria andTopContactEqualTo(Integer value) {
            addCriterion("top_contact =", value, "topContact");
            return (Criteria) this;
        }

        public Criteria andTopContactNotEqualTo(Integer value) {
            addCriterion("top_contact <>", value, "topContact");
            return (Criteria) this;
        }

        public Criteria andTopContactGreaterThan(Integer value) {
            addCriterion("top_contact >", value, "topContact");
            return (Criteria) this;
        }

        public Criteria andTopContactGreaterThanOrEqualTo(Integer value) {
            addCriterion("top_contact >=", value, "topContact");
            return (Criteria) this;
        }

        public Criteria andTopContactLessThan(Integer value) {
            addCriterion("top_contact <", value, "topContact");
            return (Criteria) this;
        }

        public Criteria andTopContactLessThanOrEqualTo(Integer value) {
            addCriterion("top_contact <=", value, "topContact");
            return (Criteria) this;
        }

        public Criteria andTopContactIn(List<Integer> values) {
            addCriterion("top_contact in", values, "topContact");
            return (Criteria) this;
        }

        public Criteria andTopContactNotIn(List<Integer> values) {
            addCriterion("top_contact not in", values, "topContact");
            return (Criteria) this;
        }

        public Criteria andTopContactBetween(Integer value1, Integer value2) {
            addCriterion("top_contact between", value1, value2, "topContact");
            return (Criteria) this;
        }

        public Criteria andTopContactNotBetween(Integer value1, Integer value2) {
            addCriterion("top_contact not between", value1, value2, "topContact");
            return (Criteria) this;
        }

        public Criteria andThermodynamicValueIsNull() {
            addCriterion("thermodynamic_value is null");
            return (Criteria) this;
        }

        public Criteria andThermodynamicValueIsNotNull() {
            addCriterion("thermodynamic_value is not null");
            return (Criteria) this;
        }

        public Criteria andThermodynamicValueEqualTo(Integer value) {
            addCriterion("thermodynamic_value =", value, "thermodynamicValue");
            return (Criteria) this;
        }

        public Criteria andThermodynamicValueNotEqualTo(Integer value) {
            addCriterion("thermodynamic_value <>", value, "thermodynamicValue");
            return (Criteria) this;
        }

        public Criteria andThermodynamicValueGreaterThan(Integer value) {
            addCriterion("thermodynamic_value >", value, "thermodynamicValue");
            return (Criteria) this;
        }

        public Criteria andThermodynamicValueGreaterThanOrEqualTo(Integer value) {
            addCriterion("thermodynamic_value >=", value, "thermodynamicValue");
            return (Criteria) this;
        }

        public Criteria andThermodynamicValueLessThan(Integer value) {
            addCriterion("thermodynamic_value <", value, "thermodynamicValue");
            return (Criteria) this;
        }

        public Criteria andThermodynamicValueLessThanOrEqualTo(Integer value) {
            addCriterion("thermodynamic_value <=", value, "thermodynamicValue");
            return (Criteria) this;
        }

        public Criteria andThermodynamicValueIn(List<Integer> values) {
            addCriterion("thermodynamic_value in", values, "thermodynamicValue");
            return (Criteria) this;
        }

        public Criteria andThermodynamicValueNotIn(List<Integer> values) {
            addCriterion("thermodynamic_value not in", values, "thermodynamicValue");
            return (Criteria) this;
        }

        public Criteria andThermodynamicValueBetween(Integer value1, Integer value2) {
            addCriterion("thermodynamic_value between", value1, value2, "thermodynamicValue");
            return (Criteria) this;
        }

        public Criteria andThermodynamicValueNotBetween(Integer value1, Integer value2) {
            addCriterion("thermodynamic_value not between", value1, value2, "thermodynamicValue");
            return (Criteria) this;
        }

        public Criteria andGenderIsNull() {
            addCriterion("gender is null");
            return (Criteria) this;
        }

        public Criteria andGenderIsNotNull() {
            addCriterion("gender is not null");
            return (Criteria) this;
        }

        public Criteria andGenderEqualTo(Integer value) {
            addCriterion("gender =", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderNotEqualTo(Integer value) {
            addCriterion("gender <>", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderGreaterThan(Integer value) {
            addCriterion("gender >", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderGreaterThanOrEqualTo(Integer value) {
            addCriterion("gender >=", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderLessThan(Integer value) {
            addCriterion("gender <", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderLessThanOrEqualTo(Integer value) {
            addCriterion("gender <=", value, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderIn(List<Integer> values) {
            addCriterion("gender in", values, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderNotIn(List<Integer> values) {
            addCriterion("gender not in", values, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderBetween(Integer value1, Integer value2) {
            addCriterion("gender between", value1, value2, "gender");
            return (Criteria) this;
        }

        public Criteria andGenderNotBetween(Integer value1, Integer value2) {
            addCriterion("gender not between", value1, value2, "gender");
            return (Criteria) this;
        }

        public Criteria andBirthDateIsNull() {
            addCriterion("birth_date is null");
            return (Criteria) this;
        }

        public Criteria andBirthDateIsNotNull() {
            addCriterion("birth_date is not null");
            return (Criteria) this;
        }

        public Criteria andBirthDateEqualTo(Date value) {
            addCriterion("birth_date =", value, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateNotEqualTo(Date value) {
            addCriterion("birth_date <>", value, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateGreaterThan(Date value) {
            addCriterion("birth_date >", value, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateGreaterThanOrEqualTo(Date value) {
            addCriterion("birth_date >=", value, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateLessThan(Date value) {
            addCriterion("birth_date <", value, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateLessThanOrEqualTo(Date value) {
            addCriterion("birth_date <=", value, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateIn(List<Date> values) {
            addCriterion("birth_date in", values, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateNotIn(List<Date> values) {
            addCriterion("birth_date not in", values, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateBetween(Date value1, Date value2) {
            addCriterion("birth_date between", value1, value2, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateNotBetween(Date value1, Date value2) {
            addCriterion("birth_date not between", value1, value2, "birthDate");
            return (Criteria) this;
        }

        public Criteria andCompanyNameIsNull() {
            addCriterion("company_name is null");
            return (Criteria) this;
        }

        public Criteria andCompanyNameIsNotNull() {
            addCriterion("company_name is not null");
            return (Criteria) this;
        }

        public Criteria andCompanyNameEqualTo(String value) {
            addCriterion("company_name =", value, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameNotEqualTo(String value) {
            addCriterion("company_name <>", value, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameGreaterThan(String value) {
            addCriterion("company_name >", value, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameGreaterThanOrEqualTo(String value) {
            addCriterion("company_name >=", value, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameLessThan(String value) {
            addCriterion("company_name <", value, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameLessThanOrEqualTo(String value) {
            addCriterion("company_name <=", value, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameLike(String value) {
            addCriterion("company_name like", value, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameNotLike(String value) {
            addCriterion("company_name not like", value, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameIn(List<String> values) {
            addCriterion("company_name in", values, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameNotIn(List<String> values) {
            addCriterion("company_name not in", values, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameBetween(String value1, String value2) {
            addCriterion("company_name between", value1, value2, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameNotBetween(String value1, String value2) {
            addCriterion("company_name not between", value1, value2, "companyName");
            return (Criteria) this;
        }

        public Criteria andPrivateTelephoneIsNull() {
            addCriterion("private_telephone is null");
            return (Criteria) this;
        }

        public Criteria andPrivateTelephoneIsNotNull() {
            addCriterion("private_telephone is not null");
            return (Criteria) this;
        }

        public Criteria andPrivateTelephoneEqualTo(Integer value) {
            addCriterion("private_telephone =", value, "privateTelephone");
            return (Criteria) this;
        }

        public Criteria andPrivateTelephoneNotEqualTo(Integer value) {
            addCriterion("private_telephone <>", value, "privateTelephone");
            return (Criteria) this;
        }

        public Criteria andPrivateTelephoneGreaterThan(Integer value) {
            addCriterion("private_telephone >", value, "privateTelephone");
            return (Criteria) this;
        }

        public Criteria andPrivateTelephoneGreaterThanOrEqualTo(Integer value) {
            addCriterion("private_telephone >=", value, "privateTelephone");
            return (Criteria) this;
        }

        public Criteria andPrivateTelephoneLessThan(Integer value) {
            addCriterion("private_telephone <", value, "privateTelephone");
            return (Criteria) this;
        }

        public Criteria andPrivateTelephoneLessThanOrEqualTo(Integer value) {
            addCriterion("private_telephone <=", value, "privateTelephone");
            return (Criteria) this;
        }

        public Criteria andPrivateTelephoneIn(List<Integer> values) {
            addCriterion("private_telephone in", values, "privateTelephone");
            return (Criteria) this;
        }

        public Criteria andPrivateTelephoneNotIn(List<Integer> values) {
            addCriterion("private_telephone not in", values, "privateTelephone");
            return (Criteria) this;
        }

        public Criteria andPrivateTelephoneBetween(Integer value1, Integer value2) {
            addCriterion("private_telephone between", value1, value2, "privateTelephone");
            return (Criteria) this;
        }

        public Criteria andPrivateTelephoneNotBetween(Integer value1, Integer value2) {
            addCriterion("private_telephone not between", value1, value2, "privateTelephone");
            return (Criteria) this;
        }

        public Criteria andUploadIdIsNull() {
            addCriterion("upload_id is null");
            return (Criteria) this;
        }

        public Criteria andUploadIdIsNotNull() {
            addCriterion("upload_id is not null");
            return (Criteria) this;
        }

        public Criteria andUploadIdEqualTo(String value) {
            addCriterion("upload_id =", value, "uploadId");
            return (Criteria) this;
        }

        public Criteria andUploadIdNotEqualTo(String value) {
            addCriterion("upload_id <>", value, "uploadId");
            return (Criteria) this;
        }

        public Criteria andUploadIdGreaterThan(String value) {
            addCriterion("upload_id >", value, "uploadId");
            return (Criteria) this;
        }

        public Criteria andUploadIdGreaterThanOrEqualTo(String value) {
            addCriterion("upload_id >=", value, "uploadId");
            return (Criteria) this;
        }

        public Criteria andUploadIdLessThan(String value) {
            addCriterion("upload_id <", value, "uploadId");
            return (Criteria) this;
        }

        public Criteria andUploadIdLessThanOrEqualTo(String value) {
            addCriterion("upload_id <=", value, "uploadId");
            return (Criteria) this;
        }

        public Criteria andUploadIdLike(String value) {
            addCriterion("upload_id like", value, "uploadId");
            return (Criteria) this;
        }

        public Criteria andUploadIdNotLike(String value) {
            addCriterion("upload_id not like", value, "uploadId");
            return (Criteria) this;
        }

        public Criteria andUploadIdIn(List<String> values) {
            addCriterion("upload_id in", values, "uploadId");
            return (Criteria) this;
        }

        public Criteria andUploadIdNotIn(List<String> values) {
            addCriterion("upload_id not in", values, "uploadId");
            return (Criteria) this;
        }

        public Criteria andUploadIdBetween(String value1, String value2) {
            addCriterion("upload_id between", value1, value2, "uploadId");
            return (Criteria) this;
        }

        public Criteria andUploadIdNotBetween(String value1, String value2) {
            addCriterion("upload_id not between", value1, value2, "uploadId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdIsNull() {
            addCriterion("customer_id is null");
            return (Criteria) this;
        }

        public Criteria andCustomerIdIsNotNull() {
            addCriterion("customer_id is not null");
            return (Criteria) this;
        }

        public Criteria andCustomerIdEqualTo(String value) {
            addCriterion("customer_id =", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdNotEqualTo(String value) {
            addCriterion("customer_id <>", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdGreaterThan(String value) {
            addCriterion("customer_id >", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdGreaterThanOrEqualTo(String value) {
            addCriterion("customer_id >=", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdLessThan(String value) {
            addCriterion("customer_id <", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdLessThanOrEqualTo(String value) {
            addCriterion("customer_id <=", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdLike(String value) {
            addCriterion("customer_id like", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdNotLike(String value) {
            addCriterion("customer_id not like", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdIn(List<String> values) {
            addCriterion("customer_id in", values, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdNotIn(List<String> values) {
            addCriterion("customer_id not in", values, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdBetween(String value1, String value2) {
            addCriterion("customer_id between", value1, value2, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdNotBetween(String value1, String value2) {
            addCriterion("customer_id not between", value1, value2, "customerId");
            return (Criteria) this;
        }

        public Criteria andAccountIdIsNull() {
            addCriterion("account_id is null");
            return (Criteria) this;
        }

        public Criteria andAccountIdIsNotNull() {
            addCriterion("account_id is not null");
            return (Criteria) this;
        }

        public Criteria andAccountIdEqualTo(String value) {
            addCriterion("account_id =", value, "accountId");
            return (Criteria) this;
        }

        public Criteria andAccountIdNotEqualTo(String value) {
            addCriterion("account_id <>", value, "accountId");
            return (Criteria) this;
        }

        public Criteria andAccountIdGreaterThan(String value) {
            addCriterion("account_id >", value, "accountId");
            return (Criteria) this;
        }

        public Criteria andAccountIdGreaterThanOrEqualTo(String value) {
            addCriterion("account_id >=", value, "accountId");
            return (Criteria) this;
        }

        public Criteria andAccountIdLessThan(String value) {
            addCriterion("account_id <", value, "accountId");
            return (Criteria) this;
        }

        public Criteria andAccountIdLessThanOrEqualTo(String value) {
            addCriterion("account_id <=", value, "accountId");
            return (Criteria) this;
        }

        public Criteria andAccountIdLike(String value) {
            addCriterion("account_id like", value, "accountId");
            return (Criteria) this;
        }

        public Criteria andAccountIdNotLike(String value) {
            addCriterion("account_id not like", value, "accountId");
            return (Criteria) this;
        }

        public Criteria andAccountIdIn(List<String> values) {
            addCriterion("account_id in", values, "accountId");
            return (Criteria) this;
        }

        public Criteria andAccountIdNotIn(List<String> values) {
            addCriterion("account_id not in", values, "accountId");
            return (Criteria) this;
        }

        public Criteria andAccountIdBetween(String value1, String value2) {
            addCriterion("account_id between", value1, value2, "accountId");
            return (Criteria) this;
        }

        public Criteria andAccountIdNotBetween(String value1, String value2) {
            addCriterion("account_id not between", value1, value2, "accountId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIsNull() {
            addCriterion("company_id is null");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIsNotNull() {
            addCriterion("company_id is not null");
            return (Criteria) this;
        }

        public Criteria andCompanyIdEqualTo(String value) {
            addCriterion("company_id =", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotEqualTo(String value) {
            addCriterion("company_id <>", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdGreaterThan(String value) {
            addCriterion("company_id >", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdGreaterThanOrEqualTo(String value) {
            addCriterion("company_id >=", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdLessThan(String value) {
            addCriterion("company_id <", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdLessThanOrEqualTo(String value) {
            addCriterion("company_id <=", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdLike(String value) {
            addCriterion("company_id like", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotLike(String value) {
            addCriterion("company_id not like", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIn(List<String> values) {
            addCriterion("company_id in", values, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotIn(List<String> values) {
            addCriterion("company_id not in", values, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdBetween(String value1, String value2) {
            addCriterion("company_id between", value1, value2, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotBetween(String value1, String value2) {
            addCriterion("company_id not between", value1, value2, "companyId");
            return (Criteria) this;
        }

        public Criteria andDataSourceIsNull() {
            addCriterion("data_source is null");
            return (Criteria) this;
        }

        public Criteria andDataSourceIsNotNull() {
            addCriterion("data_source is not null");
            return (Criteria) this;
        }

        public Criteria andDataSourceEqualTo(Integer value) {
            addCriterion("data_source =", value, "dataSource");
            return (Criteria) this;
        }

        public Criteria andDataSourceNotEqualTo(Integer value) {
            addCriterion("data_source <>", value, "dataSource");
            return (Criteria) this;
        }

        public Criteria andDataSourceGreaterThan(Integer value) {
            addCriterion("data_source >", value, "dataSource");
            return (Criteria) this;
        }

        public Criteria andDataSourceGreaterThanOrEqualTo(Integer value) {
            addCriterion("data_source >=", value, "dataSource");
            return (Criteria) this;
        }

        public Criteria andDataSourceLessThan(Integer value) {
            addCriterion("data_source <", value, "dataSource");
            return (Criteria) this;
        }

        public Criteria andDataSourceLessThanOrEqualTo(Integer value) {
            addCriterion("data_source <=", value, "dataSource");
            return (Criteria) this;
        }

        public Criteria andDataSourceIn(List<Integer> values) {
            addCriterion("data_source in", values, "dataSource");
            return (Criteria) this;
        }

        public Criteria andDataSourceNotIn(List<Integer> values) {
            addCriterion("data_source not in", values, "dataSource");
            return (Criteria) this;
        }

        public Criteria andDataSourceBetween(Integer value1, Integer value2) {
            addCriterion("data_source between", value1, value2, "dataSource");
            return (Criteria) this;
        }

        public Criteria andDataSourceNotBetween(Integer value1, Integer value2) {
            addCriterion("data_source not between", value1, value2, "dataSource");
            return (Criteria) this;
        }

        public Criteria andIsSendCodeIsNull() {
            addCriterion("is_send_code is null");
            return (Criteria) this;
        }

        public Criteria andIsSendCodeIsNotNull() {
            addCriterion("is_send_code is not null");
            return (Criteria) this;
        }

        public Criteria andIsSendCodeEqualTo(Integer value) {
            addCriterion("is_send_code =", value, "isSendCode");
            return (Criteria) this;
        }

        public Criteria andIsSendCodeNotEqualTo(Integer value) {
            addCriterion("is_send_code <>", value, "isSendCode");
            return (Criteria) this;
        }

        public Criteria andIsSendCodeGreaterThan(Integer value) {
            addCriterion("is_send_code >", value, "isSendCode");
            return (Criteria) this;
        }

        public Criteria andIsSendCodeGreaterThanOrEqualTo(Integer value) {
            addCriterion("is_send_code >=", value, "isSendCode");
            return (Criteria) this;
        }

        public Criteria andIsSendCodeLessThan(Integer value) {
            addCriterion("is_send_code <", value, "isSendCode");
            return (Criteria) this;
        }

        public Criteria andIsSendCodeLessThanOrEqualTo(Integer value) {
            addCriterion("is_send_code <=", value, "isSendCode");
            return (Criteria) this;
        }

        public Criteria andIsSendCodeIn(List<Integer> values) {
            addCriterion("is_send_code in", values, "isSendCode");
            return (Criteria) this;
        }

        public Criteria andIsSendCodeNotIn(List<Integer> values) {
            addCriterion("is_send_code not in", values, "isSendCode");
            return (Criteria) this;
        }

        public Criteria andIsSendCodeBetween(Integer value1, Integer value2) {
            addCriterion("is_send_code between", value1, value2, "isSendCode");
            return (Criteria) this;
        }

        public Criteria andIsSendCodeNotBetween(Integer value1, Integer value2) {
            addCriterion("is_send_code not between", value1, value2, "isSendCode");
            return (Criteria) this;
        }

        public Criteria andIsCreateIsNull() {
            addCriterion("is_create is null");
            return (Criteria) this;
        }

        public Criteria andIsCreateIsNotNull() {
            addCriterion("is_create is not null");
            return (Criteria) this;
        }

        public Criteria andIsCreateEqualTo(Integer value) {
            addCriterion("is_create =", value, "isCreate");
            return (Criteria) this;
        }

        public Criteria andIsCreateNotEqualTo(Integer value) {
            addCriterion("is_create <>", value, "isCreate");
            return (Criteria) this;
        }

        public Criteria andIsCreateGreaterThan(Integer value) {
            addCriterion("is_create >", value, "isCreate");
            return (Criteria) this;
        }

        public Criteria andIsCreateGreaterThanOrEqualTo(Integer value) {
            addCriterion("is_create >=", value, "isCreate");
            return (Criteria) this;
        }

        public Criteria andIsCreateLessThan(Integer value) {
            addCriterion("is_create <", value, "isCreate");
            return (Criteria) this;
        }

        public Criteria andIsCreateLessThanOrEqualTo(Integer value) {
            addCriterion("is_create <=", value, "isCreate");
            return (Criteria) this;
        }

        public Criteria andIsCreateIn(List<Integer> values) {
            addCriterion("is_create in", values, "isCreate");
            return (Criteria) this;
        }

        public Criteria andIsCreateNotIn(List<Integer> values) {
            addCriterion("is_create not in", values, "isCreate");
            return (Criteria) this;
        }

        public Criteria andIsCreateBetween(Integer value1, Integer value2) {
            addCriterion("is_create between", value1, value2, "isCreate");
            return (Criteria) this;
        }

        public Criteria andIsCreateNotBetween(Integer value1, Integer value2) {
            addCriterion("is_create not between", value1, value2, "isCreate");
            return (Criteria) this;
        }

        public Criteria andIsExamineIsNull() {
            addCriterion("is_examine is null");
            return (Criteria) this;
        }

        public Criteria andIsExamineIsNotNull() {
            addCriterion("is_examine is not null");
            return (Criteria) this;
        }

        public Criteria andIsExamineEqualTo(Integer value) {
            addCriterion("is_examine =", value, "isExamine");
            return (Criteria) this;
        }

        public Criteria andIsExamineNotEqualTo(Integer value) {
            addCriterion("is_examine <>", value, "isExamine");
            return (Criteria) this;
        }

        public Criteria andIsExamineGreaterThan(Integer value) {
            addCriterion("is_examine >", value, "isExamine");
            return (Criteria) this;
        }

        public Criteria andIsExamineGreaterThanOrEqualTo(Integer value) {
            addCriterion("is_examine >=", value, "isExamine");
            return (Criteria) this;
        }

        public Criteria andIsExamineLessThan(Integer value) {
            addCriterion("is_examine <", value, "isExamine");
            return (Criteria) this;
        }

        public Criteria andIsExamineLessThanOrEqualTo(Integer value) {
            addCriterion("is_examine <=", value, "isExamine");
            return (Criteria) this;
        }

        public Criteria andIsExamineIn(List<Integer> values) {
            addCriterion("is_examine in", values, "isExamine");
            return (Criteria) this;
        }

        public Criteria andIsExamineNotIn(List<Integer> values) {
            addCriterion("is_examine not in", values, "isExamine");
            return (Criteria) this;
        }

        public Criteria andIsExamineBetween(Integer value1, Integer value2) {
            addCriterion("is_examine between", value1, value2, "isExamine");
            return (Criteria) this;
        }

        public Criteria andIsExamineNotBetween(Integer value1, Integer value2) {
            addCriterion("is_examine not between", value1, value2, "isExamine");
            return (Criteria) this;
        }

        public Criteria andFollowPlanTimeIsNull() {
            addCriterion("follow_plan_time is null");
            return (Criteria) this;
        }

        public Criteria andFollowPlanTimeIsNotNull() {
            addCriterion("follow_plan_time is not null");
            return (Criteria) this;
        }

        public Criteria andFollowPlanTimeEqualTo(Date value) {
            addCriterion("follow_plan_time =", value, "followPlanTime");
            return (Criteria) this;
        }

        public Criteria andFollowPlanTimeNotEqualTo(Date value) {
            addCriterion("follow_plan_time <>", value, "followPlanTime");
            return (Criteria) this;
        }

        public Criteria andFollowPlanTimeGreaterThan(Date value) {
            addCriterion("follow_plan_time >", value, "followPlanTime");
            return (Criteria) this;
        }

        public Criteria andFollowPlanTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("follow_plan_time >=", value, "followPlanTime");
            return (Criteria) this;
        }

        public Criteria andFollowPlanTimeLessThan(Date value) {
            addCriterion("follow_plan_time <", value, "followPlanTime");
            return (Criteria) this;
        }

        public Criteria andFollowPlanTimeLessThanOrEqualTo(Date value) {
            addCriterion("follow_plan_time <=", value, "followPlanTime");
            return (Criteria) this;
        }

        public Criteria andFollowPlanTimeIn(List<Date> values) {
            addCriterion("follow_plan_time in", values, "followPlanTime");
            return (Criteria) this;
        }

        public Criteria andFollowPlanTimeNotIn(List<Date> values) {
            addCriterion("follow_plan_time not in", values, "followPlanTime");
            return (Criteria) this;
        }

        public Criteria andFollowPlanTimeBetween(Date value1, Date value2) {
            addCriterion("follow_plan_time between", value1, value2, "followPlanTime");
            return (Criteria) this;
        }

        public Criteria andFollowPlanTimeNotBetween(Date value1, Date value2) {
            addCriterion("follow_plan_time not between", value1, value2, "followPlanTime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {
        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}